const arr = [1, 2, 3, 2, 4]

// every() 方法测试一个数组内的所有元素是否都能通过某个指定函数的测试。它返回一个布尔值。
const resultEvery = arr.every(function (value) {
  return value == 2
})
console.log(resultEvery) // false

// some() 方法测试数组中的某些元素是否通过了由提供的函数实现的测试。它返回一个布尔值。
const resultSome = arr.some(function (value) {
  return value == 4
})
console.log(resultSome) // true

// find () 方法返回数组中满足提供的测试函数的第一个元素的值。否则返回 undefined。
const res = arr.find(function (value) {
  return value == 8
})
console.log(res) // undefined

// findIndex() 方法返回数组中满足提供的测试函数的第一个元素的索引。否则返回 -1。
const result = arr.findIndex(function (value) {
  return value == 2
})
console.log(result) // 1

// filter() 方法创建一个新数组, 其包含通过所提供函数实现的测试的所有元素。
const resultFilter = arr.filter(function (value) {
  return value == 2
})
console.log(resultFilter) // [2, 2]

// map () 方法创建一个新数组，其结果是该数组中的每个元素是调用一次提供的函数后的返回值。
const resultMap = arr.map(function (value) {
  return value + 'map'
})
console.log(resultMap) // ["1map", "2map", "3map", "2map", "4map"]
